#ifndef FHE_PRIMS_IRENDERABLE_H
#define FHE_PRIMS_IRENDERABLE_H

#include <stddef.h>

namespace fhe
{
  namespace core
  {
    template <size_t D, typename T>
    class IRenderContext;
    
    template <size_t D, typename T>
    class IRenderable
    {
    public:
      virtual void render( IRenderContext<D,T>* context ) = 0;
      virtual void unrender( IRenderContext<D,T>* context ) = 0;
    };
    
    typedef IRenderable<2,int> IRenderable2i;
    typedef IRenderable<3,double> IRenderable3d;
  }
}

#endif
